﻿using MyCode.Project.Infrastructure.Common;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace MyCode.Project.Domain.Message.Request.Activity
{
    #region 
    public class DataCenterReq
    {
        /// <summary>
        /// 店铺ID(加盟商查看必须传值)
        /// </summary>
        public Guid? ShopID { get; set; }

        /// <summary>
        /// 活动ID
        /// </summary>
        public Guid ActivityID { get; set; }

        /// <summary>
        /// 时间范围搜索
        /// </summary>
        public TimeRange EditTime { get; set; }
    }
    #endregion

    public class FitShopReq
    {
        /// <summary>
        /// 店铺活动记录主键ID
        /// </summary>
        public Guid LogID { get; set; }

        /// <summary>
        /// 经度
        /// </summary>
        public double? Longitude { get; set; }

        /// <summary>
        /// 纬度
        /// </summary>
        public double? Latitude { get; set; }
    }

    #region 活动三-马上参与
    public class ShopJoinReq
    {
        /// <summary>
        /// 店铺ID(加盟商角色必须传值)
        /// </summary>
        public Guid? ShopID { get; set; }

        /// <summary>
        /// 活动ID
        /// </summary>
        public Guid ActivityID { get; set; }

        /// <summary>
        /// 代金券ID
        /// </summary>
        public Guid VoucherID { get; set; }

        /// <summary>
        /// 兑换方案 - 主键ID
        /// </summary>
        public Guid CaseID { get; set; }
    }
    #endregion

    #region 通用活动类型-马上参与
    public class AllShopJoinReq
    {
        /// <summary>
        /// 活动ID
        /// </summary>
        public Guid ActivityID { get; set; }

        /// <summary>
        /// 店铺ID
        /// </summary>
        public Guid ShopID { get; set; }

        /// <summary>
        /// 奖品设置对应明细列表
        /// </summary>
        public List<PrizeItemReqList> PrizeItemList { get; set; }
    }

    public class PrizeItemReqList
    {
        /// <summary>
        /// 明细ID
        /// </summary>
        public Guid ItemID { get; set; }
    }
    #endregion

    #region 分销活动类型-马上参与
    public class IsAllShopJoinReq
    {
        /// <summary>
        /// 活动ID
        /// </summary>
        public Guid ActivityId { get; set; }

        /// <summary>
        /// 店铺ID
        /// </summary>
        public Guid ShopId { get; set; }

        /// <summary>
        /// 是否所有店铺参与该活动 0：否  1：是
        /// </summary>
        public int IsAll { get; set; }
    }
    #endregion

    #region 溯源
    public class OriginReq
    {
        /// <summary>
        /// 店铺ID(加盟商查看必须传值)
        /// </summary>
        public Guid? ShopID { get; set; }

        /// <summary>
        /// 活动ID
        /// </summary>
        public Guid ActivityID { get; set; }

        /// <summary>
        /// 数据中心列表主键ID，店长、店员或加盟商主键
        /// </summary>
        public Guid Id { get; set; }

        /// <summary>
        /// 时间范围搜索
        /// </summary>
        public TimeRange EditTime { get; set; }

        /// <summary>
        /// 关键字
        /// </summary>
        public string KeyWord { get; set; }
    }
    #endregion

    public class CommonActivityReq
    {
        /// <summary>
        /// 店铺ID
        /// </summary>
        public Guid? shopId { get; set; }

        /// <summary>
        /// 活动主键ID 
        /// </summary>
        public Guid id { get; set; }

        /// <summary>
        /// 经度
        /// </summary>
        public double? Longitude { get; set; }

        /// <summary>
        /// 纬度
        /// </summary>
        public double? Latitude { get; set; }
    }

    #region 报名活动字段
    public class ApplyRequst
    {
        /// <summary>
        /// 店铺活动记录主键ID
        /// </summary>
        public Guid LogID { get; set; }

        /// <summary>
        /// 小程序进入的参数，小程序码产生传参为scene
        /// </summary>
        public string Scene { get; set; }

        /// <summary>
        /// 提交报名字段列表
        /// </summary>
        public List<FieldApplyItem> FieldList { get; set; }
    }
    public class FieldApplyItem
    {
        /// <summary>
        /// 字段名
        /// </summary>
        public string FieldName { get; set; }

        /// <summary>
        /// 字段内容
        /// </summary>
        public string FieldContent  { get; set; }

        /// <summary>
        /// 排序 
        /// </summary>
        public int Sort { get; set; }
    }
    #endregion
}
